import { getCategoryAPI } from '@/apis/category';
import { onBeforeRouteUpdate, useRoute } from 'vue-router';
import { onMounted, ref } from 'vue';

export function useCategory() {
    const categoryData = ref({})
    const route = useRoute()
    // id存在一个默认值
    const getCategory = async (id = route.params.id) => {
        const res = await getCategoryAPI(id)
        categoryData.value = res.result
    }

    onMounted(() => {
        getCategory()
    })

    //在参数发生变化的时候，可以重新调用接口获得新的数据
    // to是指目标路由
    onBeforeRouteUpdate((to) => {
        // 参数是目标路由的params.id
        getCategory(to.params.id)
    })
    return {
        categoryData
    }
}